Conversation
The update_handler_factory validation incorrectly skipped updates when only _rawBody was present. Body updates use internal fields (_rawBody, _operation) that are processed later by executeUpdate. The validation now checks for _rawBody existence and proceeds with the update when present. Fixes body-only updates for update_issue and update_pull_request handlers. Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Investigate reason for campaign generator skipping update-issue
Fix: body-only updates incorrectly skipped in update_issue/update_pull_request handlers
Jan 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Campaign generator runs failed to update issues when only the
bodyfield was provided, logging "No update fields provided" and treating the operation as a no-op.Root Cause
Body updates use internal fields (
_rawBody,_operation) that are processed later byexecuteUpdateto handle append/prepend/replace operations. The validation logic inupdate_handler_factory.cjsfiltered these out and incorrectly concluded no update was needed:Changes
update_handler_factory.cjs: Check for_rawBodyexistence before skipping validationupdate_handler_factory.test.cjs: Add test case for body-only updatesImpact
Affects
update_issueandupdate_pull_requesthandlers. Theupdate_discussionhandler is unaffected as it setsbodydirectly without using the internal field pattern.Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.